Wireless Application Protocol (WAP) is a technology that enables wireless access to Internet applications from a terminal, preferably a mobile phone. The WAP forum, available at www.waporum.org, has defined a WAP architecture for pulling (i.e. user initiated) information from Internet (e.g. Internet browsing) and pushing (i.e. application initiated) information (e.g. sending news messages, mail notification).
Wireless Application Environment (WAE) has adopted a model that closely follows the World Wide Web (WWW) model. All content is specified in formats that are similar to the standard Internet formats. Content is transported using standard protocols in the WWW domain and an optimized HTTP-like protocol in the wireless domain, a WAP communication protocol, preferably the Wireless Session Protocol (WSP). WAE has borrowed from WWW standards including authorizing and publishing methods wherever possible.
The WAE assumes the existence of a WAP gateway with functionality responsible for encoding and decoding data transferred from and to the terminal. The purpose of encoding content delivered to the terminal is to minimize the size of data sent to the terminal over-the-air as well as to minimize the computational energy required by the terminal to process that data.
The major elements of the logical WAE model is a terminal including a WAP user agent that wirelessly communicates with a gateway that includes encoders and decoders. The WAP gateway in turn communicates with an origin server including server applications.
A WAP user agent is defined as any software or device that interprets content (e.g. Wireless Markup Language, WML) and may include textual browsers, voice browsers, search engines, etc.
Capability and Preference Information (CPI) may include hardware characteristics (screen size, color capabilities, image capabilities, etc.), software characteristics (operating system vendor and version, support for used programs, list of audio and video encoders, etc.), application/user preferences (browser manufacturer and version, markup languages and versions supported, scripting languages supported, etc.), WAP characteristics (WML script libraries, WAP version, WML deck size, etc.) and network characteristics (bearer characteristics such as latency and reliability, etc.).
A User Agent Profile (UAProf) specification extends the WAP to enable end-to-end flow of a UAProf between the terminal, the intermediate network points and the origin server. UAProf is using capability and preference information as a set of components and attributes. UAProf is transmitted over wireless networks within WSP headers.
In summary the UAProf is concerned with capturing classes of terminal preference information. These classes include the hardware and software characteristics of the terminal as well as information about the network to which the terminal is connected.
FIG. 1a shows schematically how a terminal 2, e.g. a mobile phone, establishes a mobile Internet session with an application in an application server 4 according to a well-established technique used today. FIG. 1b shows a block diagram of the UAProf 6 including a terminal profile 8 used in FIG. 1a. 
When a terminal establishes a mobile Internet session with an application, it will send its User Agent Profile to this application. This profile contains the attribute values of the terminal and/or references (e.g. in the form of an Internet-address) to the application server(s) where the attribute values can be found.
The scenario described in connection with FIG. 1 shows the opening of a WSP session and establishing of an initial UAProf. Upon opening a WSP session, the UAProf-aware terminal conveys its profile information using Profile and Profile-Diff headers within the WSP connect request. The values of these headers are constructed by encoding the CPI.
While a UAProf-aware session is established, the client (terminal) may update the active UAProf at any time. To do this, the terminal transmits a WSP session resume message to the WAP gateway containing Profile and Profile-Diff headers with the new CPI.
Both in the scenario described in connection with FIG. 1 and when a UAProf is updated during an already established session the UAProf profile changes are changes to the terminal's (e.g. mobile phone's) settings or characteristics (e.g. the user may change the desired gray scale level for images, etc.).
When a WSP request is issued, the terminal may provide additional information or override or augment the basic UAProf already cached at the WAP gateway. The UAProf profile in the terminal consists of actual profile data and/or Uniform Resource Locators (URLs) pointing to the actual data stored on an origin server somewhere in the network. The latter is especially useful to point to data that is the same for all users of a particular terminal type, e.g. hardware characteristics. Standard attributes values pointed at by the URL can be overridden by attribute values explicitly specified in the terminal's profile. E.g. user preferences override standard settings. The level of overriding in UAProf is thus on attribute level.
In the UAProf specification, the terminal provided with attribute values may override the default settings stored on an origin server in the network.
In the mobile Internet world, users will increasingly have more than one user device, e.g. a laptop computer, a communicator or a mobile phone, to access an application. These user devices have different capabilities with regard to screen size, screen resolution, screen colors, memory, processor capacity, browser etc. A laptop computer and a communicator could be connected via a mobile terminal to the mobile network and are then concerned as attached devices. Furthermore, terminals could have other types of attached devices, like digital cameras, MP3 players, GPS systems, text-to speech converters etc.
In order to provide a user with a relevant and valuable service it would be necessary for the application that provides the service, to be adapted to the user's terminal and to the attached devices. This adaptation can mean that the information formatting or the information itself is adjusted to the terminal capabilities. An example of adjusting the information is when an application only sends a summary of an article in a newspaper instead of the whole article.
By terminal capability is meant the combined capability of the terminal and the attached device that in some cases only depends of the capability of the attached device.
As stated above the technique used today provides for profile changes reflecting changes to the client's (terminal's) settings and characteristics and not taking into account the capability of devices attached to the client.
The object of the invention is to be able to customize the information sent from an application server to a terminal depending of the capabilities of devices attached to the terminal.